<%@ taglib prefix="s" uri="/struts-tags" %>
<!DOCTYPE html>
<html>
	<head>
		<title>NMC - Road Sweeping</title>
		<meta name="decorator" content="HeaderFooter" />
		
		<script type="text/javascript"
      		src="http://maps.googleapis.com/maps/api/js?key=AIzaSyAlTKyHLgkM8IULM9fIwPbJ96ju_5C-wtg&sensor=false">
    	</script>
		<script type="text/javascript">
			var map;
			var nmcOfficeMarkers = new Array();
			var zoneOfficeIcon = new google.maps.MarkerImage(
					  "./images/workoffice.png",
					  new google.maps.Size(32,37),
					  new google.maps.Size(6,37)
					);
			
			var highlightIcon = new google.maps.MarkerImage(
					  "./images/mm_20_yellow.png",
					  new google.maps.Size(12,20),
					  new google.maps.Size(6,20)
					);
			var nmcStartPointMarkers = new Array();
			//var polyLines = new Array();
			var sweepingTrack = new google.maps.Polyline({
					strokeOpacity: 0.5,
					strokeWeight: 2
				});
			
			
			var endPointIcon = new google.maps.MarkerImage("images/end.png",
		  									new google.maps.Size(32,37),
		  									new google.maps.Size(6,37)
											);

			var endMarker = new google.maps.Marker({icon:"./images/mm_20_yellow.png"});
			var infowindow = new google.maps.InfoWindow({
											content: " "
										});
	
	
			var nmcOffices;
	
	
			function initialize() {
				var myOptions = {
					center: new google.maps.LatLng(21.14900241815646, 79.08094482216802),
					zoom: 12,
					mapTypeId: google.maps.MapTypeId.ROADMAP
		        };
		        map = new google.maps.Map(document.getElementById("map_canvas"), myOptions);
		        
				//getTrackPointsArray("21.14900241815646 , 79.08094482216802#21.14900241815646, 79.08094482216802");
		        nmcOffices = getZoneOffices();
			}
			
			 function getZoneOffices() {
				 
				var nmcOffices = new Array();
				try
				{
					//alert("laodWardLIst");
					var appContextPath = "<%= request.getContextPath()%>";
					jsonrpc = new JSONRpcClient(appContextPath + "/JSON-RPC");
					           
					var result = jsonrpc.wards.getZoneList();
					
					if( result !=null && result.list.length > 0)
					{
						for(i=0,j=1;i < result.list.length;i++)
						{
							var latLong = result.list[i].fieldName;
							var latlangToken = latLong.split(",");
							var name = result.list[i].fieldValue;
							nmcOffices[i]= new Office(name,latlangToken[0], latlangToken[1],"")
						}
					}
					//return nmcOffices;
				}
				catch(e) {
					alert(e);
				}
				return nmcOffices;
			}
	
			function Office(name,lat,lng, info ) {
				this.name = name;
				this.lat = lat;
				this.lng = lng;
				this.info = info;
			}

			function cityView() {
				//alert("Calling");
				//map.clearOverlays();
				removeAllMarkers();
				map.setCenter(new google.maps.LatLng(21.14900241815646, 79.08094482216802));
				map.setZoom(12);
			}
	
			function zoneView() {
				//alert("Calling");
				removeAllMarkers();
				if(nmcOfficeMarkers.length)
				map.setCenter(new google.maps.LatLng(21.14900241815646, 79.08094482216802));
				displayOffices();
			}
			
			function displayOffices() {
				for(var i = 0; i < nmcOffices.length; i++ ) {
					var marker = new google.maps.Marker()
				
					
					marker.setOptions({
						icon:'./images/workoffice.png',
					    draggable: false,
					    map: map,
					    position: new google.maps.LatLng(nmcOffices[i].lat, nmcOffices[i].lng),
						myContent:nmcOffices[i].name
					  });
					
					nmcOfficeMarkers.push(marker);
					marker.setMap(map);
					google.maps.event.addListener(marker, 'click', showInfoWindow);
				
				}
			
			}
			
			function showInfoWindow() {
				//alert(this.myContent);
				infowindow.setContent(this.myContent);
		        infowindow.open(map, this);
				//showSweepingTrack();
				
		                      
			}
			
			function showSweepingTrack() {
				//infowindow.setContent(this.sweeperId + "");
				//infowindow.open(map, this);
				displayEmpTrack(this.latLngPoints, this.sweeperId, this.type, this);
				endMarker.setPosition(this.latLngPoints[this.latLngPoints.length-1]);
				endMarker.setMap(map);
				
			}
	
			function displayEmpTrack(trackPoints,id, type,sMarker) {
					
				//var sTrackPoints;
				var color = "#ff0000";
				
				if(type=="500mtr") {
					color = "#ff0000";
				} else if (type=="700mtr") {
					color = "#000000";
				} else if(type=="900mtr") {
					color = "#3b2ee8";
				}
				
					
				sweepingTrack.setPath(trackPoints);
				sweepingTrack.strokeColor = color;
				sweepingTrack.startPointMarker = sMarker;
				
				
				sweepingTrack.setMap(map);
				//google.maps.event.addListener(sweepingTrack, 'click', showTrackInfoWindow);
					
				
			}
			
			function showTrackInfoWindow() {
				infowindow.setContent(getSweeperInfo(this));
				infowindow.open(map, this);
				displayEmpTrack(this.latLngPoints, this.sweeperId, this.type, this);
				endMarker.setPosition(this.latLngPoints[this.latLngPoints.length-1]);
				endMarker.setMap(map);
				
			}
			
			function removeAllMarkers() {
				sweepingTrack.setMap(null);
				endMarker.setMap(null);
				for(var i=0; i < nmcOfficeMarkers.length; i++ ) {
					nmcOfficeMarkers[i].setMap(null);
				}
				for(var i=0; i < nmcStartPointMarkers.length; i++ ) {
					nmcStartPointMarkers[i].setMap(null);
				}
			}
			
			
			function removeOfficeMarkers() {
				for(var i=0; i < nmcOfficeMarkers.length; i++ ) {
					nmcOfficeMarkers[i].setMap(null);
				}
			}
			
			function removeWardMarkers() {
				for(var i=0; i < nmcStartPointMarkers.length; i++ ) {
					nmcStartPointMarkers[i].setMap(null);
				}
				if(sweepingTrack !=null) {
					sweepingTrack.setMap(null);
				}
				
				if(endMarker !=null) {
					endMarker.setMap(null);
				}
				infowindow.close();
				
			}
			
			
			
			function clearCompleteMap() {
				removeAllMarkers();
				if(sweepingTrack !=null) {
					sweepingTrack.setMap(null);
				}
				if(endMarker !=null) {
					endMarker.setMap(null);
				}
				infowindow.close();
			}
			
			function hideFormErrorMessage() {
					document.getElementById("errorMessage").innerHTML =""
					document.getElementById("errorMessage").style.display = 'none';
			}
			
			function showFormErrorMessage(msg) {
				document.getElementById("errorMessage").innerHTML =msg;
				document.getElementById("errorMessage").style.display = 'block';
			}
			
			
			function displayWard() {
				
				hideFormErrorMessage();
				var flag=true;
				var zoneObj = document.getElementById("zoneId");
				var wardObj = document.getElementById("wardId"); 
		 		if(zoneObj.options[zoneObj.selectedIndex].value=='-1' || 
		 				wardObj.options[wardObj.selectedIndex].value=='-1'){
					flag=false;
					showFormErrorMessage("Please select prabhag & zone");
					return;
				}

		 		document.getElementById("go1").style.display = 'none';
				document.getElementById("go1Spinner").style.display = 'block';

				
				var eWardObj = document.getElementById('wardId');
				var wId = eWardObj.options[eWardObj.options.selectedIndex].value;

				removeAllMarkers();
				
				//Call to get Ward Lat Long
				var appContextPath = "<%= request.getContextPath()%>";
				jsonrpc = new JSONRpcClient(appContextPath + "/JSON-RPC");
				var wardObj = jsonrpc.wards.getWard(wId);
				var latLong = wardObj.latLong;
				if(latLong){
					setMapLocation(latLong.split(",")[0],latLong.split(",")[1]);
					map.setZoom(15);
				}
				

				var nmcWardTracks = getWardStreetData(wId,"ward");
				if(nmcWardTracks==null || nmcWardTracks.length==0) {
					showFormErrorMessage("No Tracks Found");
				} else {
					for(var i = 0; i < nmcWardTracks.length; i++ ) {
						//alert(nmcWardTracks[i]);
						var marker = new google.maps.Marker(
							{
								position:nmcWardTracks[i].latLngPoints[0],
								sweeperId:nmcWardTracks[i].sweeperId,
								sweeperName:nmcWardTracks[i].sweeperName,
								supervisorId:nmcWardTracks[i].supervisorId,
								supervisorName:nmcWardTracks[i].supervisorName,
								remarks:nmcWardTracks[i].remarks,
								type:nmcWardTracks[i].type,
								latLngPoints:nmcWardTracks[i].latLngPoints,
								bit:nmcWardTracks[i].bit
								
							}
						);
						nmcStartPointMarkers.push(marker);
						marker.setMap(map);
						google.maps.event.addListener(marker, 'click', showTrackInfoWindow);
						//google.maps.event.addListener(marker, 'mouseover', showTrackInfoWindow);
						//google.maps.event.addListener(marker, 'mouseout', hideInfoWindow);
					}
				}
				
				document.getElementById("go1").style.display = 'block';
				document.getElementById("go1Spinner").style.display = 'none';
		}
			
		function setMapLocation(lat,lang)
		{
			map.setCenter(new google.maps.LatLng(lat, lang));
		}
			
			
		function displayEmp() {
				
				hideFormErrorMessage();
				
				var flag=true;
				var empId = document.getElementById("empId");
		 		if(empId.value ==''){
					flag=false;
					showFormErrorMessage("Please Enter Emp Id");
					//document.getElementById("errorMessage").style.display = 'block';
					return;
				}

		 		document.getElementById("go2").style.display = 'none';
				document.getElementById("go2Spinner").style.display = 'block';
				
		 		var eId = empId.value;
				removeAllMarkers();
				var nmcWardTracks = getWardStreetData(eId,"emp");
				if(nmcWardTracks==null || nmcWardTracks.length==0) {
					showFormErrorMessage("No Tracks Found");
				} else {
					
					map.setCenter(nmcWardTracks[0].latLngPoints[0]);
					map.setZoom(16);
					for(var i = 0; i < nmcWardTracks.length; i++ ) {
						//alert(nmcWardTracks[i]);
						var marker = new google.maps.Marker(
							{
								position:nmcWardTracks[i].latLngPoints[0],
								sweeperId:nmcWardTracks[i].sweeperId,
								sweeperName:nmcWardTracks[i].sweeperName,
								supervisorId:nmcWardTracks[i].supervisorId,
								supervisorName:nmcWardTracks[i].supervisorName,
								remarks:nmcWardTracks[i].remarks,
								type:nmcWardTracks[i].type,
								latLngPoints:nmcWardTracks[i].latLngPoints
								
							}
						);
						nmcStartPointMarkers.push(marker);
						marker.setMap(map);
						google.maps.event.addListener(marker, 'click', showTrackInfoWindow);
					}
				}
			
				document.getElementById("go2").style.display = 'block';
				document.getElementById("go2Spinner").style.display = 'none';
			}
			
			
			function hideInfoWindow() {
				infowindow.close();
				if(sweepingTrack !=null) {
					sweepingTrack.setMap(null);
				}
				if(endMarker != null) {
					endMarker.setMap(null);
				}
				
				
			}
			
			function getPointsArray(latLngString) {
				
			}
			
			function getWardStreetData(selectedWard, byValue) {
				
				
				
				
				var wardTracks = new Array();
				
				
				try
				{
					//alert("laodWardLIst");
					var appContextPath = "<%= request.getContextPath()%>";
					jsonrpc = new JSONRpcClient(appContextPath + "/JSON-RPC");

					var result;
					if(byValue=="ward") {
						result = jsonrpc.wards.getWardTrackList(selectedWard);
					} else {
						result = jsonrpc.wards.getWardTrackListByEmp(selectedWard);
					}
					
					if( result !=null && result.list.length > 0)
					{
						for(i=0,j=1;i < result.list.length;i++)
						{
							var sweeperId = result.list[i].sweeperId;
							var sweeperName = result.list[i].sweeperName;
							var supervisorId = result.list[i].superviserId;
							var supervisorName = result.list[i].superviserName;
							var trackString = result.list[i].latLong;
							var trackType = result.list[i].trackType;
							var remarks = result.list[i].remarks;
							var bit = result.list[i].bit;
							var track = new SweepingTrack(sweeperId, sweeperName, supervisorId, supervisorName, 
		                               trackString, trackType,remarks, bit);
							wardTracks.push(track);
						}
					}
					//return nmcOffices;
				}
				catch(e) {
					alert(e);
				}
				//return nmcOffices;*/
				
				
				
				
				
				
				//JSON Call to fetch ward street data
				
				/*var sTrack1 = new SweepingTrack(1, "Sweeper 1", 10, "Supervisor 10", 
				                               "21.149069,79.090126#21.146963,79.089852", "500mtr");
											   
				var sTrack2 = new SweepingTrack(2, "Sweeper 2", 11, "Supervisor A", 
				                               "21.153412,79.090737#21.153016,79.090705#21.152481,79.090598#21.151951,79.090523", "700mtr");
		
				var sTrack3 = new SweepingTrack(3, "Sweeper 3", 12, "Supervisor B", 
				                               "21.151305,79.093559#21.152181,79.09358#21.152426,79.093999#21.152616,79.094101#21.152751,79.094063", "900mtr");
											   
				wardTracks.push(sTrack1);
				wardTracks.push(sTrack2);
				wardTracks.push(sTrack3);*/
				return wardTracks;
			}
			
			function SweepingTrack(sweeperId, sweeperName, supervisorId, supervisorName,
									trackPointsString, type, remarks, bit) {
				this.sweeperId = sweeperId;
				this.sweeperName = sweeperName;
				this.supervisorId = supervisorId;
				this.supervisorName = supervisorName;
				this.type = type;
				this.remarks=remarks;
				this.latLngPoints = getTrackPointsArray(trackPointsString);
				this.bit=bit;
			}
			
			function getSweeperInfo(trackDetail) {
				var content = "";
				content = content + "<b>Sweeper Id</b> : " + trackDetail.sweeperId 
				              + "</br><b>Sweeper Name</b> : " + trackDetail.sweeperName;
				              
				if(trackDetail.supervisorId != null || !trackDetail.supervisorId == "") {
					content = content + "</br><b>Supervisor Id</b> : " + trackDetail.supervisorId 
		              + "</br><b>Supervisor Name</b> : " + trackDetail.supervisorName;
				}
				if(trackDetail.remarks != null || !trackDetail.remarks != ""){
					content = content + "</br><b>Remarks</b> : " + trackDetail.remarks; 
				}
				if(trackDetail.bit != null || !trackDetail.bit != ""){
					content = content + "</br><b>Bit</b> : " + trackDetail.bit; 
				}
				
				return content;
			}
			
			function getTrackPointsArray(trackPoints) {
				var latLongPoints = new Array()
				var points = trackPoints.split('#');
				for(var i=0; i < points.length; i++ ) {
					var latLng = points[i].split(',');
					var lat = parseFloat(latLng[0].trim());
					var lng = parseFloat(latLng[1].trim());
					latLongPoints.push(new google.maps.LatLng(lat,lng));
				}
				return latLongPoints;
			}
			
			function showCityView() {
				document.getElementById("mCity").className="current";
				toggle("cityViewSideBar");
				document.getElementById("locateTrackSideBar").style.display = 'none';
				document.getElementById("mLocate").className=null;
				document.getElementById("zoneOfficeViewSideBar").style.display = 'none';
				document.getElementById("mZone").className=null;
				document.getElementById("feedbackSideBar").style.display = 'none';
				document.getElementById("mFeedback").className=null;
				cityView();
			}
			
			function toggle(id) {
		        var state = document.getElementById(id).style.display;
		            if (state == 'block') {
		                //document.getElementById(id).style.display = 'none';
		            } else {
		                document.getElementById(id).style.display = 'block';
		            }
		    }
		
			function showZoneOfficesView() {
				//Get Zone offices List and display on map and side bar
				document.getElementById("mZone").className="current";
				toggle("zoneOfficeViewSideBar");
				document.getElementById("locateTrackSideBar").style.display = 'none';
				document.getElementById("mCity").className=null;
				document.getElementById("cityViewSideBar").style.display = 'none';
				document.getElementById("feedbackSideBar").style.display = 'none';
				document.getElementById("mLocate").className=null;
				document.getElementById("mFeedback").className=null;
				zoneView();
			}
		
			function showLocateTrackView() {
				
				//Load Zone & Ward List.
				
				document.getElementById("mLocate").className="current";
				toggle("locateTrackSideBar");
				document.getElementById("cityViewSideBar").style.display = 'none';
				document.getElementById("zoneOfficeViewSideBar").style.display = 'none';
				document.getElementById("feedbackSideBar").style.display = 'none';
				document.getElementById("mZone").className=null;
				document.getElementById("mFeedback").className=null;
				document.getElementById("mCity").className=null;
			}
		
			function showFeedbackView() {
				document.getElementById("mFeedback").className="current";
				toggle("feedbackSideBar");
				document.getElementById("cityViewSideBar").style.display = 'none';
				document.getElementById("zoneOfficeViewSideBar").style.display = 'none';
				document.getElementById("locateTrackSideBar").style.display = 'none';
				document.getElementById("mLocate").className=null;
				document.getElementById("mZone").className=null;
				document.getElementById("mCity").className=null;
			
			}
			
			function checkFeedback()
			{
				var fbtext = document.getElementById("feedbackText");
				if(fbtext.value.length == 0){
					
					document.getElementById("fbErrMsg").style.display = 'block';
					return false;
				}
		 		else
		 		{
		 			document.getElementById("fbErrMsg").style.display = 'none';
		 		}
				if(fbtext.value.length >250){
					
					document.getElementById("fbLengthErrMsg").style.display = 'block';
					return false;
				}
		 		else
		 		{
		 			document.getElementById("fbLengthErrMsg").style.display = 'none';
		 		}
				
				<%-- var appContextPath = "<%= request.getContextPath()%>";
				jsonrpc = new JSONRpcClient(appContextPath + "/JSON-RPC");
				           
				var result = jsonrpc.wards.saveFeedback(fbtext.value);
				fbtext.value="";
				return false; --%>
				return true;
			}
			
			
			
			
			function loadWardList(ref, wardId) {
				try
				
				{
					//alert("laodWardLIst");
					var appContextPath = "<%= request.getContextPath()%>";
					jsonrpc = new JSONRpcClient(appContextPath + "/JSON-RPC");
					var zoneId = ref.options[ref.options.selectedIndex].value;
					
					if('-1' == zoneId)  {
					document.getElementById('wardId').disabled="disabled";
					}else{
			
					var result = jsonrpc.wards.getWardList(zoneId);
					//alert(result);
					var eWardObj = document.getElementById(wardId);
					var eventLength = eWardObj.options.length;
					
					for(i=eWardObj.options.length -1;i>=0 ;i--)
					{
							eWardObj.options[i] = null;
					}
					eWardObj.options[0] = new Option('Select Prabhag','-1');
					
					if( result !=null && result.list.length > 0)
					{

						for(i=0,j=1;i < result.list.length;i++)
						{
							var id = result.list[i].fieldName;
							var value = result.list[i].fieldValue;
							eWardObj.options[j++] = new Option(value,id);
						}
					}
					}
				}
				catch(e) {
				alert(e);
				}
				zoneId = ref.options[ref.options.selectedIndex].value; 
				if('-1' == zoneId)  {
				   document.getElementById('wardId').disabled="disabled";
			   	}else{
			   	 document.getElementById('wardId').disabled=false;
			   	}
				}
			
			
			
		</script>
	</head>

	<body onload="initialize()" >
	
	
	<!-- <div id="content">-->
		

		<!-- Start Menu -->
		<div id="nav">
			<div class="topN">
				<ul>
					<li><a id="mCity" href="javascript:showCityView()" title="" class="current">City View</a></li>
					<li><a id="mZone" href="javascript:showZoneOfficesView()" title="">Zone Offices</a></li>
					<li><a id="mLocate" href="javascript:showLocateTrackView()" title="" >Locate Track</a></li>
					<li class="last"><a id="mFeedback" href="javascript:showFeedbackView()" title="">Feedback</a></li>
				</ul>
			</div>
		</div>
		<!-- End Menu -->

		

		
		<!-- Start Main Body content -->
		<div id="mainCnt">
		
			<div>
				<div id="content-main">
					<div id="map_canvas" style="margin: 10px; height: 450px"></div>
				</div>
				
				<div id="content-sidebar">
					<div id="cityViewSideBar" style="display:block;margin-left:5px">
						<p> Nagpur - Geographical center of India. 
						    
						    </br> 
						    Major highways 
						    NH-7 ( Varanasi - Kanyakumari )
						    NH-6 (Mumbai - Sambalpur - Calcutta) 
						    </br>
						    Major Rail Route 
						    Mumbai, Chennai, Howrah * Delhi 
						    </br>
						    Important Central & State Government offices and institutions are located in Nagpur. 
						    Industrial Development is existing along the fringe areas like Kamptee, Hingna, Wadi, Khapri, Butibori and Kalmeshwar.
					   	    </br>
					   	    Nagpur's Municipal Limits encompass 217.56 Square Kms of land areas.
						</p>
					</div>
		
					<div id="zoneOfficeViewSideBar" style="display:none">
						<ul>
							<li>Laxmi Nagar Zone</li>
							<li>Dharampeth Zone</li>
							<li>Hanuman Nagar Zone</li>
							<li>Dhantoli Zone</li>
							<li>Nehru Nagar Zone</li>
							<li>Ghandi Bag Zone</li>
							<li>Sataranjipura Zone </li>
							<li>Lakadganj Zone</li>
							<li>Ashi Nagar Zone</li>
							<li>Mangalwari Zone</li>
						</ul> 
					</div> 
	
					<div id="locateTrackSideBar" style="display:none">
				    	<div id="errorMessage" class="errorMsg">Please Select Zone and ward</div>  
						<form action="" method="post">
							<fieldset>
							<legend>Search by ward</legend>
							 <div>
							 <span>
							 <s:select id="zoneId" name="track.zoneId" cssClass="dropdown" 
		                            value="%{zoneId}" headerKey="-1" headerValue="Select Zone" 
					 			 onchange="javascript:loadWardList(this,'wardId');" 
					  			list="zoneList" listKey="id" listValue="name" onselect="true"/>
				
							 </span>
							 <span>
								<s:select  required="true" name="wardId" id="wardId" cssClass="dropdown"
								list="wardList" listKey="id" listValue="name"
								headerKey="-1" headerValue="Select Prabhag"
								value="%{wardId}"  />
							 </span>
							 <span>
								<div id="go1"><a class="btn-info btn" href="javascript:displayWard()"><span>Go</span></a></div>
								<div id="go1Spinner" style="display:none" ><image src="./images/spinner.gif"></div>
							 </span>
							 </div>
							</fieldset>
							
							<fieldset>
							<legend>Search by emp</legend>
							 <div>
							 <span>
								<Input id="empId" type="text" maxlength="6"/>
							 </span>
							 <span>
								<div id="go2"><a class="btn-info btn" href="javascript:displayEmp()"><span>Go</span></a></div>
								<div id="go2Spinner" style="display:none" ><image src="./images/spinner.gif"></div>
							 </span>
							 </div>
							</fieldset>
							<div>
							Zone Officer Name:
							</br> 
							Zone Officer Number:
							</br> 
							Ward Inspector Name:
							</br> 
							SMS 54242 (Space) Your Compliant for any garbage complaint
							or complaint by going to our website www.nmcgarbagecomplaint.com
							</div>
							<iframe src="http://www.facebook.com/plugins/likebox.php?href=http%3A%2F%2Fwww.facebook.com%2Fpages%2FNMC-Garbage-Complaint%2F263385173685699&amp;send=false&amp;layout=standard&amp;width=200&amp;show_faces=false&amp;action=like&amp;colorscheme=light&amp;font&amp;height=60" scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:250px; height:60px;" allowTransparency="true"></iframe>
							
						</form>
					</div>
					<div id="feedbackSideBar" style="display:none">
						<form id="feedbackForm" action="addFeedback.action" method="post" onsubmit="return checkFeedback()">
							<fieldset>
								<legend>Feedback</legend>
								 <div>
									 <s:label value="Name"/>:<s:textfield name="feedback.name" maxlength="30"/>
						 		</div>
							 	<div>
							 		<s:label value="Phone"/>:<s:textfield name="feedback.phone" maxlength="15"/>
							 	</div>
								 <div>
								 <s:label value="Email"/>:<s:textfield name="feedback.email" maxlength="40"/>
								 </div>
								 <div>
								 <span>
								
								 <div id="fbErrMsg" class="errorMsg">Please enter feedback.</div>
								 <div id="fbLengthErrMsg" class="errorMsg">Please enter 250 characters only.</div>
								  <span class="mandetory">*</span>
								 <s:textarea id="feedbackText"  name="feedback.feedbackText" cols="25" rows="10" >
								 </s:textarea>
								 </span>
								 
								 <span> <s:submit theme="simple" id="submitBtn"  value="Submit" cssClass="buttonStyle"/>
								 </span>
								 </div>
							</fieldset>
						</form>
					</div>
				</div>
			</div>
		</div>
	
	<!-- End Main Body content-->
	
	
	</body>
</html>
